From 0292b858da3289c701fe4f4d227b70ccef8ec2f9 Mon Sep 17 00:00:00 2001 From: "kaf24@scramble.cl.cam.ac.uk" Date: Sat, 5 Feb 2005 09:34:35 +0000 Subject: [PATCH] bitkeeper revision 1.1159.244.1 (4204932bmZgxudypIonkb5Mm9GmAtA) Create arch_do_boot_vcpu(). Signed-off-by: keir.fraser@cl.cam.ac.uk --- xen/arch/x86/domain.c | 7 +++++++ xen/common/Makefile | 2 +- xen/common/domain.c | 4 +--- xen/include/xen/domain.h | 2 ++ 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c index 732809db07..1fa6a0f0e5 100644 --- a/xen/arch/x86/domain.c +++ b/xen/arch/x86/domain.c @@ -273,6 +273,13 @@ void arch_do_createdomain(struct exec_domain *ed) } } +void arch_do_boot_vcpu(struct exec_domain *ed) +{ + struct domain *d = ed->domain; + ed->thread.schedule_tail = d->exec_domain[0]->thread.schedule_tail; + ed->mm.perdomain_ptes = d->mm_perdomain_pt + (ed->eid << PDPT_VCPU_SHIFT); +} + #ifdef CONFIG_VMX void arch_vmx_do_resume(struct exec_domain *ed) { diff --git a/xen/common/Makefile b/xen/common/Makefile index 17b3b952e7..eb8d1b1f99 100644 --- a/xen/common/Makefile +++ b/xen/common/Makefile @@ -6,7 +6,7 @@ OBJS := $(subst dom_mem_ops.o,,$(OBJS)) OBJS := $(subst grant_table.o,,$(OBJS)) OBJS := $(subst page_alloc.o,,$(OBJS)) OBJS := $(subst physdev.o,,$(OBJS)) -OBJS := $(subst slab.o,,$(OBJS)) +OBJS := $(subst xmalloc.o,,$(OBJS)) endif ifneq ($(debugger),y) diff --git a/xen/common/domain.c b/xen/common/domain.c index 37e23fc1a6..b2e6360ddc 100644 --- a/xen/common/domain.c +++ b/xen/common/domain.c @@ -330,9 +330,7 @@ long do_boot_vcpu(unsigned long vcpu, full_execution_context_t *ctxt) memcpy(&ed->thread, &idle0_exec_domain.thread, sizeof(ed->thread)); - /* arch_do_createdomain */ - ed->thread.schedule_tail = d->exec_domain[0]->thread.schedule_tail; - ed->mm.perdomain_ptes = d->mm_perdomain_pt + (ed->eid << PDPT_VCPU_SHIFT); + arch_do_boot_vcpu(ed); sched_add_domain(ed); diff --git a/xen/include/xen/domain.h b/xen/include/xen/domain.h index d502f18871..0e28badba0 100644 --- a/xen/include/xen/domain.h +++ b/xen/include/xen/domain.h @@ -16,6 +16,8 @@ extern void arch_free_exec_domain_struct(struct exec_domain *ed); extern void arch_do_createdomain(struct exec_domain *ed); +extern void arch_do_boot_vcpu(struct exec_domain *ed); + extern int arch_final_setup_guestos( struct exec_domain *d, full_execution_context_t *c); -- 2.30.2